﻿using Abp.Domain.Entities.Auditing;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Camc.Quality.RecordTable.FormClass
{
    /// <summary>
    /// 记录要求表
    /// </summary>
    public class RecordRequirementsEntity : FullAuditedEntity<Guid>
    {
        public RecordRequirementsEntity()
        {

        }

        public RecordRequirementsEntity(string recordLocation, string recordLocation_DisplayName, bool recordLocation_Enable, bool recordLocation_Show, int recordLocation_Property, string recordStatus, string recordStatus_DisplayName, bool recordStatus_Enable, bool recordStatus_Show, int recordStatus_Property, string recordRequire, string recordRequire_DisplayName, bool recordRequire_Enable, bool recordRequire_Show, int recordRequire_Property, string recordMainopoint, string recordMainopoint_DisplayName, bool recordMainopoint_Enable, bool recordMainopoint_Show, int recordMainopoint_Property, string designerDemand, string designerDemand_DisplayName, bool designerDemand_Enable, bool designerDemand_Show, int designerDemand_Property, string processorDemand, string processorDemand_DisplayName, bool processorDemand_Enable, bool processorDemand_Show, int processorDemand_Property, string remarks, string remarks_DisplayName, bool remarks_Enable, bool remarks_Show, int remarks_Property)
        {
            RecordLocation = recordLocation;
            RecordLocation_DisplayName = recordLocation_DisplayName;
            RecordLocation_Enable = recordLocation_Enable;
            RecordLocation_Show = recordLocation_Show;
            RecordLocation_Property = recordLocation_Property;
            RecordStatus = recordStatus;
            RecordStatus_DisplayName = recordStatus_DisplayName;
            RecordStatus_Enable = recordStatus_Enable;
            RecordStatus_Show = recordStatus_Show;
            RecordStatus_Property = recordStatus_Property;
            RecordRequire = recordRequire;
            RecordRequire_DisplayName = recordRequire_DisplayName;
            RecordRequire_Enable = recordRequire_Enable;
            RecordRequire_Show = recordRequire_Show;
            RecordRequire_Property = recordRequire_Property;
            RecordMainopoint = recordMainopoint;
            RecordMainopoint_DisplayName = recordMainopoint_DisplayName;
            RecordMainopoint_Enable = recordMainopoint_Enable;
            RecordMainopoint_Show = recordMainopoint_Show;
            RecordMainopoint_Property = recordMainopoint_Property;
            DesignerDemand = designerDemand;
            DesignerDemand_DisplayName = designerDemand_DisplayName;
            DesignerDemand_Enable = designerDemand_Enable;
            DesignerDemand_Show = designerDemand_Show;
            DesignerDemand_Property = designerDemand_Property;
            ProcessorDemand = processorDemand;
            ProcessorDemand_DisplayName = processorDemand_DisplayName;
            ProcessorDemand_Enable = processorDemand_Enable;
            ProcessorDemand_Show = processorDemand_Show;
            ProcessorDemand_Property = processorDemand_Property;
            Remarks = remarks;
            Remarks_DisplayName = remarks_DisplayName;
            Remarks_Enable = remarks_Enable;
            Remarks_Show = remarks_Show;
            Remarks_Property = remarks_Property;
        }


        #region B1记录位置
        /// <summary>
        /// 记录位置值
        /// </summary>
        public string RecordLocation { get; protected set; }
        /// <summary>
        /// 记录位置列名
        /// </summary>
        public virtual string RecordLocation_DisplayName { get; protected set; }
        /// <summary>
        /// 是否可操作
        /// </summary>
        public bool RecordLocation_Enable { get; protected set; } = false;
        /// <summary>
        /// 是否显示
        /// </summary>
        public bool RecordLocation_Show { get; protected set; } = false;
        /// <summary>
        /// 是否合并
        /// </summary>
        public virtual int RecordLocation_Property { get; protected set; } = 0;
        #endregion

        #region 记录状态
        /// <summary>
        /// 记录状态值
        /// </summary>
        public string RecordStatus { get; protected set; }
        /// <summary>
        /// 记录状态列名
        /// </summary>
        public virtual string RecordStatus_DisplayName { get; protected set; }
        /// <summary>
        /// 是否可操作
        /// </summary>
        public bool RecordStatus_Enable { get; protected set; } = false;
        /// <summary>
        /// 是否显示
        /// </summary>
        public bool RecordStatus_Show { get; protected set; } = false;
        /// <summary>
        /// 是否合并
        /// </summary>
        public virtual int RecordStatus_Property { get; protected set; } = 0;
        #endregion

        #region 记录要求
        /// <summary>
        /// 记录要求值
        /// </summary>
        public string RecordRequire { get; protected set; }
        /// <summary>
        /// 记录要求列名
        /// </summary>
        public virtual string RecordRequire_DisplayName { get; protected set; }
        /// <summary>
        /// 是否可操作
        /// </summary>
        public bool RecordRequire_Enable { get; protected set; } = false;
        /// <summary>
        /// 是否显示
        /// </summary>
        public bool RecordRequire_Show { get; protected set; } = false;
        /// <summary>
        /// 是否合并
        /// </summary>
        public virtual int RecordRequire_Property { get; protected set; } = 0;
        #endregion

        #region 记录要点
        /// <summary>
        /// 记录要点值
        /// </summary>
        public string RecordMainopoint { get; protected set; }
        /// <summary>
        /// 记录要点列名
        /// </summary>
        public virtual string RecordMainopoint_DisplayName { get; protected set; }
        /// <summary>
        /// 是否可操作
        /// </summary>
        public bool RecordMainopoint_Enable { get; protected set; } = false;
        /// <summary>
        /// 是否显示
        /// </summary>
        public bool RecordMainopoint_Show { get; protected set; } = false;
        /// <summary>
        /// 是否合并
        /// </summary>
        public virtual int RecordMainopoint_Property { get; protected set; } = 0;
        #endregion

        #region 设计要求
        /// <summary>
        /// 设计要求值
        /// </summary>
        public string DesignerDemand { get; protected set; }
        /// <summary>
        /// 设计要求列名
        /// </summary>
        public virtual string DesignerDemand_DisplayName { get; protected set; }
        /// <summary>
        /// 是否可操作
        /// </summary>
        public bool DesignerDemand_Enable { get; protected set; } = false;
        /// <summary>
        /// 是否显示
        /// </summary>
        public bool DesignerDemand_Show { get; protected set; } = false;
        /// <summary>
        /// 是否合并
        /// </summary>
        public virtual int DesignerDemand_Property { get; protected set; } = 0;
        #endregion

        #region 工艺要求
        /// <summary>
        /// 工艺要求值
        /// </summary>
        public string ProcessorDemand { get; protected set; }
        /// <summary>
        /// 工艺要求列名
        /// </summary>
        public virtual string ProcessorDemand_DisplayName { get; protected set; }
        /// <summary>
        /// 是否可操作
        /// </summary>
        public bool ProcessorDemand_Enable { get; protected set; } = false;
        /// <summary>
        /// 是否显示
        /// </summary>
        public bool ProcessorDemand_Show { get; protected set; } = false;
        /// <summary>
        /// 是否合并
        /// </summary>
        public virtual int ProcessorDemand_Property { get; protected set; } = 0;
        #endregion

        #region 备注
        /// <summary>
        /// 备注值
        /// </summary>
        public string Remarks { get; protected set; }
        /// <summary>
        /// 备注列名
        /// </summary>
        public virtual string Remarks_DisplayName { get; protected set; }
        /// <summary>
        /// 是否可操作
        /// </summary>
        public bool Remarks_Enable { get; protected set; } = false;
        /// <summary>
        /// 是否显示
        /// </summary>
        public bool Remarks_Show { get; protected set; } = false;
        /// <summary>
        /// 是否合并
        /// </summary>
        public virtual int Remarks_Property { get; protected set; } = 0;
        #endregion


        /// <summary>
        /// B1记录位置
        /// </summary>
        /// <param name="recordLocation"></param>
        /// <param name="recordLocation_DisplayName"></param>
        /// <param name="recordLocation_Enable"></param>
        /// <param name="recordLocation_Show"></param>
        /// <param name="recordLocation_Property"></param>
        public void SetRecordLocation(string recordLocation, string recordLocation_DisplayName, bool recordLocation_Enable, bool recordLocation_Show, int recordLocation_Property)
        {
            RecordLocation = recordLocation;
            RecordLocation_DisplayName = recordLocation_DisplayName;
            RecordLocation_Enable = recordLocation_Enable;
            RecordLocation_Show = recordLocation_Show;
            RecordLocation_Property = recordLocation_Property;
        }
        /// <summary>
        /// B2记录状态
        /// </summary>
        /// <param name="recordStatus"></param>
        /// <param name="recordStatus_DisplayName"></param>
        /// <param name="recordStatus_Enable"></param>
        /// <param name="recordStatus_Show"></param>
        /// <param name="recordStatus_Property"></param>
        public void SetRecordStatus(string recordStatus, string recordStatus_DisplayName, bool recordStatus_Enable, bool recordStatus_Show, int recordStatus_Property)
        {
            RecordStatus = recordStatus;
            RecordStatus_DisplayName = recordStatus_DisplayName;
            RecordStatus_Enable = recordStatus_Enable;
            RecordStatus_Show = recordStatus_Show;
            RecordStatus_Property = recordStatus_Property;
        }
        /// <summary>
        /// B3记录要求
        /// </summary>
        /// <param name="recordRequire"></param>
        /// <param name="recordRequire_DisplayName"></param>
        /// <param name="recordRequire_Enable"></param>
        /// <param name="recordRequire_Show"></param>
        /// <param name="recordRequire_Property"></param>
        public void SetRecordRequire(string recordRequire, string recordRequire_DisplayName, bool recordRequire_Enable, bool recordRequire_Show, int recordRequire_Property)
        {
            RecordRequire = recordRequire;
            RecordRequire_DisplayName = recordRequire_DisplayName;
            RecordRequire_Enable = recordRequire_Enable;
            RecordRequire_Show = recordRequire_Show;
            RecordRequire_Property = recordRequire_Property;
        }
        /// <summary>
        /// B4记录要点
        /// </summary>
        /// <param name="recordMainopoint"></param>
        /// <param name="recordMainopoint_DisplayName"></param>
        /// <param name="recordMainopoint_Enable"></param>
        /// <param name="recordMainopoint_Show"></param>
        /// <param name="recordMainopoint_Property"></param>
        public void SetRecordMainopoint(string recordMainopoint, string recordMainopoint_DisplayName, bool recordMainopoint_Enable, bool recordMainopoint_Show, int recordMainopoint_Property)
        {
            RecordMainopoint = recordMainopoint;
            RecordMainopoint_DisplayName = recordMainopoint_DisplayName;
            RecordMainopoint_Enable = recordMainopoint_Enable;
            RecordMainopoint_Show = recordMainopoint_Show;
            RecordMainopoint_Property = recordMainopoint_Property;
        }
        /// <summary>
        /// B5设计要求
        /// </summary>
        /// <param name="designerDemand"></param>
        /// <param name="designerDemand_DisplayName"></param>
        /// <param name="designerDemand_Enable"></param>
        /// <param name="designerDemand_Show"></param>
        /// <param name="designerDemand_Property"></param>
        public void SetDesignerDemand(string designerDemand, string designerDemand_DisplayName, bool designerDemand_Enable, bool designerDemand_Show, int designerDemand_Property)
        {
            DesignerDemand = designerDemand;
            DesignerDemand_DisplayName = designerDemand_DisplayName;
            DesignerDemand_Enable = designerDemand_Enable;
            DesignerDemand_Show = designerDemand_Show;
            DesignerDemand_Property = designerDemand_Property;
        }
        /// <summary>
        /// B6工艺要求
        /// </summary>
        /// <param name="processorDemand"></param>
        /// <param name="processorDemand_DisplayName"></param>
        /// <param name="processorDemand_Enable"></param>
        /// <param name="processorDemand_Show"></param>
        /// <param name="processorDemand_Property"></param>
        public void SetProcessorDemand(string processorDemand, string processorDemand_DisplayName, bool processorDemand_Enable, bool processorDemand_Show, int processorDemand_Property)
        {
            ProcessorDemand = processorDemand;
            ProcessorDemand_DisplayName = processorDemand_DisplayName;
            ProcessorDemand_Enable = processorDemand_Enable;
            ProcessorDemand_Show = processorDemand_Show;
            ProcessorDemand_Property = processorDemand_Property;
        }
        /// <summary>
        /// B7备注
        /// </summary>
        /// <param name="remarks"></param>
        /// <param name="remarks_DisplayName"></param>
        /// <param name="remarks_Enable"></param>
        /// <param name="remarks_Show"></param>
        /// <param name="remarks_Property"></param>
        public void SetRemarks(string remarks, string remarks_DisplayName, bool remarks_Enable, bool remarks_Show, int remarks_Property)
        {
            Remarks = remarks;
            Remarks_DisplayName = remarks_DisplayName;
            Remarks_Enable = remarks_Enable;
            Remarks_Show = remarks_Show;
            Remarks_Property = remarks_Property;
        }

    }
}
